package com.itheima.service;

import com.itheima.domain.Permission;
import com.itheima.domain.Role;

import java.util.List;

public interface IRoleService {

    /**
     * 分页查询，查询所有角色信息
     *
     * @param pageNum  当前页
     * @param pageSize 每页显示条数
     * @return
     */
    List<Role> findAllRole(Integer pageNum, Integer pageSize);

    /**
     * 添加新角色信息
     *
     * @param role
     */
    void insertRole(Role role);

    /**
     * 根据角色id查询角色详情
     *
     * @param roleId 角色id
     * @return
     */
    Role findByRoleId(String roleId);

    /**
     * 根据角色id查询此角色未拥有的权限
     *
     * @param roleId 角色ID
     * @return
     */
    List<Permission> findRolePermission(String roleId);

    /**
     * 根据角色ID和权限ID，添加此用户未拥有的权限
     *
     * @param roleId      角色ID
     * @param permissions 权限ID
     */
    void insertByRoleIdAndPermissionId(String roleId, String[] permissions);
}
